using System;
using System.Collections.Generic;
using System.Text;

namespace ChEngine
{
    public enum MoveFlag
    {
        Nothing=0,
        Check=1,
        Mate=2,
        Capture=4,
        PromoteToQueen = 8,
        PromoteToRook = 16,
        PromoteToKnight = 32,
        PromoteToBishop  = 64,
        EnPassant = 128,
        QueenSideCastle = 256,
        KingSideCastle = 512,
        PawnCapture = 1024,
        KnightCapture = 2048,
        BishopCapture = 4096,
        RookCapture   = 8192,
        QueenCapture = 16384,
        BreakShortCastle = 32768,
        BreakLongCastle  = 65536,
        NoPromotion = ~(PromoteToBishop|PromoteToKnight|PromoteToQueen|PromoteToRook),
        Promotion = (PromoteToBishop | PromoteToKnight | PromoteToQueen | PromoteToRook),
        Castling = (QueenSideCastle|KingSideCastle)
    }
}
